package com.example.demo.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 *
 * </p>
 *
 * @author sjy
 * @since 2025-05-25
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="Order对象", description="")
public class Orders implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "预订订单编号，自增，主键")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty(value = "会议室编号")
    private Integer boardroomId;

    @ApiModelProperty(value = "预订人编号")
    private Integer customerId;

    @ApiModelProperty(value = "预订日期（yyyy-MM-dd)")
    private Date bookingDate;

    @ApiModelProperty(value = "预订起始时间（小时:00:00）（HH:mm:ss)")
    private Date startTime;

    @ApiModelProperty(value = "预订结束时间（小时:00:00），必须大于预订起始时间（HH:mm:ss)")
    private Date endTime;

    @ApiModelProperty(value = "参会人数")
    private Integer numPeople;

    @ApiModelProperty(value = "订单状态：1未支付，2已支付，3审核中，4已取消，5已完成")
    private Integer state;

    @ApiModelProperty(value = "总价格：小时数×每小时单价")
    private Double totalPrice;

    @ApiModelProperty(value = "关联的会议室状态表编号")
    private Integer stateId;

    @ApiModelProperty(value = "退订时间")
    private Date cancelDate;

    @ApiModelProperty(value = "订单添加时间")
    private Date addDate;

    @ApiModelProperty(value = "退款金额")
    private Double cancelPrice;
}
